package enum

// UserEnum 用户枚举
// swagger:enum ClusterEnum(UNKNOWN,STUDENT,TEACHER)
type UserEnum string

const (

	// UNKNOWN 用户类型 - 未知
	// swagger:enum UNKNOWN 用户类型 - 未知
	UNKNOWN UserEnum = "UNKNOWN"

	// STUDENT 用户类型 - 学生
	// swagger:enum STUDENT 用户类型 - 学生
	STUDENT UserEnum = "STUDENT"

	// TEACHER 用户类型 - 老师
	// swagger:enum TEACHER 用户类型 - 老师
	TEACHER UserEnum = "TEACHER"
)

// Equal
// Title: 判断集群状态是否相等
// Description: 判断集群状态是否相等
func (cluster UserEnum) Equal(value string) bool {
	return cluster == UserEnum(value)
}

// Get
// Get 获取集群状态
// Title: 获取集群状态
// Description: 获取集群状态
func (cluster UserEnum) Get(value string) UserEnum {
	return UserEnum(value)
}

// Len
// Len 获取集群状态长度
// Title: 获取集群状态长度
// Description: 获取集群状态长度
func (cluster UserEnum) Len() int {
	return len(string(cluster))
}

// String
// String 获取集群状态字符串
// Title: 获取集群状态字符串
// Description: 获取集群状态字符串
func (cluster UserEnum) String() string {
	return string(cluster)
}

// Convert
// Title: 转换集群状态
// Description: 转换集群状态
// Param      	str1      	string                  							"转换后的字符串"
// Param      	str2      	string                  							"转换后的字符串"
// Return    		error     													"返回错误信息"
func (cluster UserEnum) Convert() string {
	if cluster.Equal(UNKNOWN.String()) {
		return "未知"
	}
	if cluster.Equal(STUDENT.String()) {
		return "学生"
	}
	if cluster.Equal(TEACHER.String()) {
		return "老师"
	}
	return "未知"
}
